Physics

Physics Process, Delta Time

Raycast

Raycast: Climbing Stairs in a 2D Platformer .

Area2D

  • Layer :

    • "Which shirts the node wears".

    • In other words, the Area uses this if it needs to be "seen" by another Area.

  • Mask :

    • "Which shirts the node sees".

    • In other words, the Area uses this to identify which Areas it wants to "see".

  • Monitoring :

    • Roughly: If set to 'true', it will allow boolean 'true' Masks to be activated. If set to 'false', it will disable all the node's Masks.

  • Monitorable :

    • Roughly: If set to 'true', it will allow boolean 'true' Layers to be activated. If set to 'false', it will disable all the node's Layers.

  • Example:  If Area_A and Area_B are intersecting while both areas are listening for entry and exit signals from the other area:

    • If Area_A quickly toggles its 'Layer':

      • Perception of Area_A: It will not perceive anything.

      • Perception of Area_B: It will stop detecting Area_A and then detect Area_A again. In other words, it will interpret it as an "enter" and "exit" of Area_A.

    • If Area_A quickly toggles its 'Mask':

      • Perception of Area_A: It will stop detecting Area_B and then detect Area_B again. In other words, it will interpret it as an "enter" and "exit" of Area_B.

      • Perception of Area_B: It will not perceive anything.

    • If Area_A quickly toggles 'Monitoring':

      • Perception of Area_A: It will stop detecting Area_B and then detect Area_B again. In other words, it will interpret it as an "enter" and "exit" of Area_B.

      • Perception of Area_B: It will stop detecting Area_A and then detect Area_A again. In other words, it will interpret it as an "enter" and "exit" of Area_A.

    • If Area_A quickly toggles 'Monitorable':

      • Perception of Area_A: It will not perceive anything.

      • Perception of Area_B: It will not perceive anything.

    • If Area_B quickly toggles its 'Layer':

      • Perception of Area_A: It will stop detecting Area_B and then detect Area_B again. In other words, it will interpret it as an "enter" and "exit" of Area_B.

      • Perception of Area_B: It will not perceive anything.

    • If Area_B quickly toggles its 'Mask':

      • Perception of Area_A: It will not perceive anything.

      • Perception of Area_B: It will stop detecting Area_A and then detect Area_A again. In other words, it will interpret it as an "enter" and "exit" of Area_A.

    • If Area_B quickly toggles 'Monitoring':

      • Perception of Area_A: It will stop detecting Area_B and then detect Area_B again. In other words, it will interpret it as an "enter" and "exit" of Area_B.

      • Perception of Area_B: It will stop detecting Area_A and then detect Area_A again. In other words, it will interpret it as an "enter" and "exit" of Area_A.

    • If Area_B quickly toggles 'Monitorable':

      • Perception of Area_A: It will not perceive anything.

      • Perception of Area_B: It will not perceive anything.

  • 'area_shape' and 'body_shape' signals:

    • These signals are useful in cases where the Area2D has multiple collision shapes, for example an enemy with many contact points spread across its body.

    • These signals will return: the RID (Resource ID), the Area2D itself, 'area_shape_index' and 'local_shape_index'. All this information is used to better detect which shape was collided within the Area2D.

Skeleton, Bones, Joints

IK
SpringArm
  • Moves all child Nodes into the region corresponding to the SpringArm, regardless of where they are. One way to imagine the SpringArm is as a "train track", where its children are the "trains" and they can only move along the track. The advantage of the SpringArm is collision detection with the node's Shape, so it adapts to collisions and moves all its children "forward" from the collision, i.e., moves them closer to the SpringArm origin.

    • About the Shape: I don't know how it works, because the Shape is not visible to me.

Ragdoll

Soft-Body

Demos